package com.example.hissys.mapper;

import com.example.hissys.entity.Hospital;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import java.util.List;

/**
 * 医院数据访问层
 * @author Your Name
 * @since 2025-01-03
 */
@Mapper
public interface HospitalMapper {
    /**
     * 查询所有医院信息
     * @return 医院列表
     */
    @Select("SELECT * FROM hospitals")
    List<Hospital> findAll();

    /**
     * 根据ID查询医院
     * @param id 医院ID
     * @return 医院信息
     */
    @Select("SELECT * FROM hospitals WHERE id = #{id}")
    Hospital findById(Integer id);

    /**
     * 根据医院名称模糊搜索
     * @param keyword 搜索关键词
     * @return 匹配的医院列表
     */
    @Select("SELECT * FROM hospitals WHERE name LIKE CONCAT('%', #{keyword}, '%')")
    List<Hospital> searchByName(String keyword);

    /**
     * 根据医院等级查询医院列表
     * @param level 医院等级（如：三甲、三乙等）
     * @return 符合等级的医院列表
     */
    @Select("SELECT * FROM hospitals WHERE level = #{level}")
    List<Hospital> findByLevel(String level);
} 